package com.dican.portal.pedidos;

import java.io.IOException;
import java.sql.SQLException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.dican.portal.DAO.ClientesDAO;
import com.dican.portal.beans.*;

public class geraPedido extends HttpServlet {
	private static final long serialVersionUID = 1L;

    public geraPedido() {
        super();
    }

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request,response);
	}

	@SuppressWarnings("unchecked")
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		HttpSession session = request.getSession(false);
		if(session==null)
			response.sendRedirect("logout.jsp");
		else{
			String IDCnpj = request.getParameter("CnpjId");
			Double desconto  = Double.parseDouble(request.getParameter("desconto"));
			String clienteId = IDCnpj.substring(0,32);
			Pedido pedido = new Pedido();
			try {
				pedido.setProdutos((List<Produto>) session.getAttribute("listaProd"));
				Cliente cliente = ClientesDAO.getCliente(clienteId);
				pedido.setCliente(cliente);
				pedido.setDesconto(desconto);
				pedido.setObservacao(request.getParameter("obs").replace("'", ""));
				pedido.setFormapagamento(cliente.getFormaPagamentoID());
				pedido.setTransportadora(cliente.getTransportadoraID());
				pedido.setRepresentante((Representante)session.getAttribute("rep"));
				session.setAttribute("pedido", pedido);
				response.sendRedirect("conferePedido.jsp");
			} catch (SQLException e) {
				e.printStackTrace();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
	}
}
